package Application;

import Application.Config.Config;
import Application.Summoner.GunsSummoner;
import Application.Summoner.ThingSummoner;
import Application.Utils.StaticUtil;
import Application.Widgets.Other.ListPanelForTags;
import Application.Widgets.Override.LabelOverride;

import javax.swing.*;
import java.awt.*;

//                            _ooOoo_
//                           o8888888o
//                           88" . "88
//                           (| -_- |)
//                            O\ = /O
//                        ____/`---'\____
//                      .   ' \\| |// `.
//                       / \\||| : |||// \
//                     / _||||| -:- |||||- \
//                       | | \\\ - /// | |
//                     | \_| ''\---/'' | |
//                      \ .-\__ `-` ___/-. /
//                   ___`. .' /--.--\ `. . __
//                ."" '< `.___\_<|>_/___.' >'"".
//               | | : `- \`.;`\ _ /`;.`/ - ` : | |
//                 \ \ `-. \_ __\ /__ _/ .-` / /
//         ======`-.____`-.___\_____/___.-`____.-'======
//                            `=---='
//
//         .............................................
//                  佛祖镇楼                  BUG辟易
//          佛曰:
//                  写字楼里写字间，写字间里程序员；
//                  程序人员写程序，又拿程序换酒钱。
//                  酒醒只在网上坐，酒醉还来网下眠；
//                  酒醉酒醒日复日，网上网下年复年。
//                  但愿老死电脑间，不愿鞠躬老板前；
//                  奔驰宝马贵者趣，公交自行程序员。
//                  别人笑我忒疯癫，我笑自己命太贱；
//                  不见满街漂亮妹，哪个归得程序员？
//                  By 某不知名沙雕网友

public class MainMenu
{
    public static void main(String[] args)
    {
        StaticUtil.Init_config();
        Config config = StaticUtil.config;
        StaticUtil.mainMenuFrame = new JFrame();
        JFrame mainMenuFrame = StaticUtil.mainMenuFrame;
        mainMenuFrame.setTitle("边缘世界Mod文件生成器");
        mainMenuFrame.setIconImage(new ImageIcon("src/Asset/Rim-Craft.png").getImage());
        mainMenuFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        mainMenuFrame.setExtendedState(JFrame.MAXIMIZED_BOTH);
        JPanel menuPanel = new JPanel();


        JPanel errorPanel = StaticUtil.errorPanel;
        StaticUtil.Init_errorReportPane();

        JButton thingSummoner = new JButton("访问物品生成器");
        thingSummoner.setFont(config.fontGetter());
        thingSummoner.addActionListener(e -> {
            ThingSummoner.ThingsSummoner();
            mainMenuFrame.setVisible(false);
        });

        JButton gunsSummoner = new JButton("访问枪械生成器");
        gunsSummoner.setFont(config.fontGetter());
        gunsSummoner.addActionListener(e -> {
            GunsSummoner.GunSummoner();
            mainMenuFrame.setVisible(false);
        });

        JButton open_AI_Setter_Frame = new JButton("打开AI设置界面");
        open_AI_Setter_Frame.setFont(config.fontGetter());
        open_AI_Setter_Frame.addActionListener(e -> StaticUtil.Init_AI_SetterFrame());

        ListPanelForTags test = new ListPanelForTags(menuPanel,mainMenuFrame);//TODO:delete it

        menuPanel.add(thingSummoner);
        menuPanel.add(gunsSummoner);
        menuPanel.add(open_AI_Setter_Frame);
        menuPanel.setOpaque(false);

        mainMenuFrame.setSize(1200, 500);
        mainMenuFrame.add(menuPanel,BorderLayout.CENTER);
        mainMenuFrame.add(errorPanel,BorderLayout.SOUTH);
        if (config.background_file != null)
        {
            StaticUtil.Init_AI_Panel();
            mainMenuFrame.add(StaticUtil.AI_Panel,BorderLayout.WEST);
        }
        mainMenuFrame.setVisible(true);
    }
}